package com.quanyue.haircut.order.service;

import com.quanyue.haircut.order.dto.ArriveShopCount;
import com.quanyue.haircut.order.dto.CommissionResult;
import com.quanyue.haircut.order.dto.TurnoverResult;

import java.math.BigDecimal;
import java.time.LocalDate;
import java.util.List;
import java.util.Map;

public interface OrderCountService {
    // 根据技师ID查询提成
    CommissionResult findCommission(Integer technicianId);

    // 每个商户-店铺营业额日统计
    List <TurnoverResult> dateTurnover(Integer merchantNo, LocalDate startDate, LocalDate endDate);

    // 每个商户-店铺营业额月统计
    List <TurnoverResult> monthTurnover(Integer merchantNo, String startMonth, String endMonth);

    // 每个商户总营业额统计
    BigDecimal merchantTurnover(Integer merchantNo);

    // 每日到店会员
    List <ArriveShopCount> dateArriveShop(Integer merchantNo, LocalDate startDate, LocalDate endDate);

    // 每月到店会员
    List <ArriveShopCount> monthArriveShop(Integer merchantNo, String startMonth, String endMonth);

    // 总/当月/当日营业额
    Map <String, BigDecimal> findTotalMonthDate(Integer merchantNo);

    // 营业额导出Excel
    String createExcel(Integer merchantNo);
}
